Color bar code and code determining system

ABSTRACT

A color bar code comprising a code block is disclosed. The code block comprises: a header region, comprising a specific color; and a code region, comprising at least two code color bars with different color kinds, wherein a color sequence of the code color bars indicates a code. The code color bars form concentric layers surrounding the header region. Such color bar code can comprise more information and the contained therein is more easily to be acquired. A code determining system which can determine the code in the color bar code is also disclosed.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. application Ser.No. 17/308,063, filed on May 5, 2021, which is a continuationapplication of U.S. application Ser. No. 16/151,356, filed on Oct. 4,2018, which claims the benefit of U.S. Provisional Application No.62/634,199, filed on Feb. 23, 2018. The contents of these applicationsare incorporated herein by reference.

BACKGROUND OF THE INVENTION 1. Field of the Invention

The present invention relates to a color bar code and a code determiningsystem, and relates to a color bar code which can contain a code withmore information and a code determining system for the color bar code.

2. Description of the Prior Art

A bar code is applied to indicate some information such as a productname and a product price. FIG. 1 is a schematic diagram illustrating aconventional bar code. As illustrated in FIG. 1 , the bar code 100comprises a plurality of black bars B_1-B_3 (only three of them aremarked). The black bars B_1-B_3 may have variety widths and thedistances/gaps between neighboring black bars could be different. Theinformation contained in the bar code 100 depends on the widths of theblack bars B_1-B_3 and the distances between the black bars B_1-B_3.

However, the information of the bar code 100 is limited since theinformation only depends on at least one of the widths of the black barsand the gaps between the black bars. Besides, in order to read thecorrect information of the bar code 100, a specific reader in a specificdirection is needed, thus is non-convenient for a user.

SUMMARY OF THE INVENTION

Therefore, one objective of the present invention is to provide a colorbar code which can contain a code with more information and is moreeasily for acquiring the code contained therein.

Another objective of the present invention is to provide a codedetermining system which can contain a code with more information and ismore easily for acquiring the code contained therein.

One embodiment of the present invention discloses a color bar codecomprising a code block. The code block comprises: a header region,comprising a specific color; and a code region, comprising at least twocode color bars with different color kinds, wherein a color sequence ofthe code color bars indicates a code. The code color bars formconcentric layers surrounding the header region.

Another embodiment of the present invention discloses a code determiningsystem, for determining a code contained in a color bar code regioncomprising a code block including a header region and a code region witha plurality of code color bars. The code determining system comprises: acolor bar code reader, configured to read the color bar code; and a codedetermining circuit, configured to determine a starting point accordingto the header region and to determine the code contained in the colorbar code according to a color sequence of the code color bars, based onthe color bar code read by the color bar code reader. The header regioncomprises a specific color. The code region comprises at least two ofthe code color bars with different color kinds. The code color bars formconcentric layers surrounding the header region.

In view of above-mentioned embodiments, the color bar code can comprisemore information than a conventional bar code since the code containedin the color bar code depends on color kind or color sequence of variouscolors.

These and other objectives of the present invention will no doubt becomeobvious to those of ordinary skill in the art after reading thefollowing detailed description of the preferred embodiment that isillustrated in the various figures and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram illustrating a conventional bar code.

FIG. 2A, FIG. 2B and FIG. 2C are schematic diagrams illustrating colorbar codes and code determining systems according to embodiments of thepresent invention.

FIG. 3 , FIG. 4 , FIG. 5 , FIG. 6 , FIG. 7 , FIG. 8 and FIG. 9 areschematic diagrams illustrating color bar codes according to differentembodiments of the present invention.

FIG. 10 is a block diagram illustrating an example that the codeacquired from the color bar code is applied to control operations of anelectronic device.

FIG. 11 and FIG. 12 are schematic diagrams illustrating examples for theapplications of a color bar code.

DETAILED DESCRIPTION

Different embodiments are provided in following descriptions to explainthe concept of the present invention. Please note, the components ofeach embodiment can be implemented by hardware (e.g. circuit, device,apparatus) or hardware with software (e.g. a processor installed with atleast one program). Besides, the components of each embodiment can beseparated to more components or be integrated to fewer components.Additionally, the term “first”, “second”, “third” in followingdescriptions are only for explaining different components or differentsteps, but do not mean the sequence thereof.

FIG. 2A is a schematic diagram illustrating a color bar code CBC and acode determining system 200 according to one embodiment of the presentinvention. As illustrated in FIG. 2A, the color bar code CBC comprises afirst code block BL_1, which comprises a header region HR and a coderegion CR.

The header region HR is used to define position of the code region CRand the reading sequence of the code region CR, and the code region CRis used to define a code by at least one of the color kind and the colorsequence contained in the code region CR. The header region HR comprisesat least one header color bar, and each of the at least one header colorbar may be formed in one or more color kinds.

In one embodiment, the header region HR preferably has a predeterminedasymmetric optical feature to define the position of the code region CRcorresponding to the header region HR. For example, the asymmetricoptical feature of the header region HR includes a specific color changefrom red to blue to define the code region CR been positioned next tothe bar colored in blue.

In yet another embodiment, the header region HR may not have theasymmetric optical feature, and the code region CR is positionedsurrounding the header region HR as shown in FIG. 2B and FIG. 2C. Oncethe header region HR is identified, any direction (or most directions)from the header region HR to outside region could be used to decode thecode region CR.

Furthermore, the header region HR may varies in several types, and sothe type of the header region HR could contribute the decode of the coderegion CR. For example, when the header region HR include a color changefrom red to blue then the followed code region CR may be decoded withone additional parameter A, and when the header region HR include acolor change from red to green then the followed code region CR may bedecoded with one additional parameter B.

In the example of FIG. 2A, the header region HR comprises two headercolor bars H_1, H_2. The above predetermined asymmetric optical featurecan comprise at least one of following optical features: a specificwidth of at least one of the header color bar, a specific shape of atleast one of the header color bar, a specific color sequence of aplurality of the header color bars, or a specific color variation of aplurality of the header color bars.

For example, the predetermined asymmetric optical feature comprises atleast one width of at least one of the header color bar and at least oneshape of at least one of the header color bar. For another example, thepredetermined asymmetric optical feature comprises a color variation ofa plurality of the header color bars. In one embodiment, the asymmetricoptical feature may be a combination of the above features, such as acombination of a color sequence and a width or a combination of colorchange and shape.

In another embodiment, the header region HR may comprise at least oneheader color bar without a predetermined asymmetric optical feature. Thecolor bar code CBC comprises only one code block BL_1, and the headercolor bar combined with a background region could provide the asymmetricoptical feature.

The code region CR defines at least one color bar code. The code regionCR comprises one or more code color bars, and each code color bar may beformed in one or more color kinds. The color bar code is defined by thecolor kind or the color sequence of the one or more code color bars,wherein when the code region CR includes one code color bar then thecode is defined by the color kind in the code color bar, and when thecode region CR includes a plurality of code color bars and each codecolor bar is formed in unique color kind then the code is defined by thecolor sequence of the code color bars.

In this embodiment, the code region CR comprises code color barsC_1-C_5. The header color bars H_1, H_2 and the code color bars C_1-C_5can have different colors, but can have the same colors as well. In thisembodiment, each of the code color bars C_1-C_5 and the header colorbars H_1, H_2 is formed in unique color kind and all of the code colorbars C_1-C_5 and the header color bars H_1, H_2 are not overlap in colorkind.

The code (e.g. a digital code) contained in the color bar code CBC canbe determined (i.e. decoded) by a code determining system 200 comprisinga color bar code reader 201 and a code determining circuit 203. Thecolor bar code CBC can be read by the color bar code reader 201 togenerate a reading result RR, and then the code determining circuit 203determines the code contained in the color bar code CBC according to thereading result RR. In following embodiments, the color bar code reader201 is an image sensor and the reading result RR comprises the image ofthe color bar code CBC. The code determining circuit 203 determines astarting point based on the header region HR, and determines the codecontained in the color bar code CBC based on a color kind or a colorsequence of the code color bar C_1-C_5.

For example, in one embodiment, the header code color bar H_1 is printedin color red (R), the header code color bar H_2 is printed in colorgreen (G), the code color bar C_1 is printed in color yellow (Y), thecode color bar C_2 is printed in color purple (P), the code color barC_3 is printed in color orange (O), the code color bar C_4 is printed incolor white (W) and the code color bar C_5 is printed in color blue (B).

In one embodiment, each color kind represents one digital code, thus thecode contained in the color bar code CBC can be 000 (R)-001 (G)-010(Y)-011 (P)-100 (O)-101 (W)-111 (B) from the code color bar C_1 to thecode color bar C_5. The header code color bars H_1 and H_2 indicate astart point of the color bar code CBC, thus are not determined as anycode.

In another embodiment, each color change represents one digital code,thus the code contained in the color bar code CBC depends on the colorsequence of the code color bar C_1-C_5. In such case, the code containedin the color bar code CBC from the code color bar C_1 to the code colorbar C_5 can be:

-   -   00000 (R-G)-00001 (G-Y)-00010 (Y-P)-00100 (P-O)-01000        (O-W)-10000 (W-B).

Please note, in such case, the code is not limited to depend on a colorsequence of two color kinds, the code can depend on a color sequence ofmore than two color kinds. For example, in another embodiment, the colorsequence R-G-Y means the code 001011 and the color sequence P-O-W meansthe code 110110. It will be appreciated that the above-mentioned digitalcodes are only examples for explaining and do not mean to limit thescope of the present invention.

The color bar code CBC can comprise more than one code blocks. FIG. 3 isa schematic diagram illustrating a color bar code according to anotherembodiment of the present invention. As illustrated in FIG. 3 , thecolor bar code CBC comprises a second code block BL_2, which comprises aheader region having an arrangement the same as an arrangement for theheader region HR of the first code block BL_1, and comprises a coderegion having an arrangement the same as an arrangement for the coderegion CR of the first code block BL_1. That is, the header region ofthe second code block BL_2 also comprises the header color bars H_1,H_2, and the code region of the second code block BL_2 also comprisesthe code color bars C_1-C_5. The second code block BL_2 follows anending of the first code block BL_1. The color bar code CBC can comprisemore than two code blocks arranged in such manner.

In the embodiment of FIG. 3 , the color bar code reader 201 is a circleshape, which may be formed by a shape of the color bar code reader 201or a shape of a device that the color bar code reader 201 is providedin. Also, the color bar code reader 201 has a scan line SL_1 to scan thecolor bar code CBC. The scan line SL_1 scans the code color bar C_5 of athird code block BL_3 at a left side of the first code block BL_1, thewhole first code block BL_1, and header color bars H_1, H_2, code colorbar C_1 of the second code block BL_2. In such case, the codedetermining circuit 203 firstly identifies the header region as thestarting point, and then determines the code contained in the color barcode CBC according to a predetermined number of code color barsfollowing the starting point.

For example, if the predetermined number is 5, the code determiningcircuit 203 determines the code contained in the color bar code CBCaccording to five code color bars following the starting point.Therefore, in the embodiment of FIG. 3 , the code determining circuit203 determines the code of the color bar code CBC according code colorbars C_1-C_5. If a number of the code color bars following the headerregion HR is not the predetermined number, the code determining circuit203 does not determine the code contained in the color bar code CBCaccording to such code color bars. For example, in the embodiment ofFIG. 3 , the code determining circuit 203 does not determine the codecontained in the color bar code CBC according to the code color bar C_1of the second code block BL_2 even if the header color bars H_1, H_2 ofthe second code block BL_2 exist in the image scanned by the scan lineSL_1, since the number of code color bars following the header colorbars H_1, H_2 of the second code block BL_2 does not match thepredetermined number 5. The predetermined number can be, for example,stored in a storage device which the code determining circuit 203, orcan be provided in real time (e.g. via a network).

In another embodiment, the predetermined number can be identified by atleast one of the optical feature of the header region, such as the colorchange of the header color bars, the width of each header color bar orthe numbers of the header color bar. For example, when the header regionHR includes a color change from red to blue then the predeterminednumber is identified as five and when the header region HR includes acolor change from red to green then the predetermined number isidentified as six.

The color barcode reader 201 may not read a whole color barcode blockeach time. In such case, when the color barcode reader 201 already knowsthe above-mentioned predetermined number of the code color bars and howto identify starting point, then the color barcode reader 201 cancombine two segments of different code blocks.

As illustrated in the embodiment of FIG. 4 , when the color barcodereader 201 reads code color bars C_3-C_5 of the third code block BL_3and header color bars H_1, H_2, code color bars C_1-C_3 of the firstcode block BL_1, the code determining circuit 203 can combine the codecolor bars C_3-C_5 of the third code block BL_3 and the code color barsC_1-C_2 in the first code block BL_1 to determine the code contained inthe color bar code CBC. Alternatively, the code determining circuit 203can combine the code color bars C_4-C_5 of the third code block BL_3 andthe code color bars C_1-C_3 in the first code block BL_1 to determinethe code contained in the color bar code CBC.

Briefly, the code determining circuit 203 determines the code containedin the color bar code CBC based on a color kind for a combination for atleast one the code color bar of the first code block BL_1 and at leastone the code color bar of the second code block BL_2, or a colorsequence for a combination of at least one the code color bar of thefirst code block BL_1 and at least one the code color bar of the secondcode block BL_2. In one embodiment, a number for the code color bar ofthe first code block BL_1 and the code color bar of the second codeblock BL_2 for the combination equals to a predetermined number (e.g. 5in above-mentioned embodiments).

The color barcode reader 201 may have more than one scan lines. FIG. 5is a schematic diagram illustrating color bar code according to oneembodiment of the present invention. As illustrated in the embodiment ofFIG. 5 , the color bar code reader 201 comprises 10 scan linesSL_1-SL_10 and each one of the scan lines SL_1-SL_10 scan differentnumber of color bars. For example, the scan line SL_1 scan the codecolor bars C_1-C_5 of the first code block BL_1, and the scan line SL_2scan the header color bars H_1, H_2 and the code color bars C_1-C_5 ofthe second code block BL_2. Accordingly, the scan lines SL_1-SL_10 mayacquire different scan results.

After that, the code determining circuit 203 can determine a codecontained in the code color bar according to the scan result when atleast one scan line cover a whole code block or two segments inneighboring code blocks can be combined. Therefore, the code determiningcircuit 203 can acquire a plurality of candidate codes corresponding tothe scan results. Next, the code determining circuit 203 selects a mostpossible code from the candidate codes as the code contained in thecolor bar code CBC.

In one embodiment, the code determining circuit 203 determines a numberof the scan lines which each of the candidate codes correspond to andselects the candidate code which corresponds to a maximum number of scanlines as the code contained in color bar code CBC. For example, if thescan lines SL_2, SL_3, SL_5, SL_6, SL_7 and SL_9 correspond to a firstcandidate code and scan lines SL_4 and SL_8 correspond to a secondcandidate code, the code determining circuit 203 selects the firstcandidate code as the code contained in the color bar code CBC. Via suchmechanism, the correct code can be acquired even if the color bar codereader 201 is not located in a very precise location.

As above-mentioned, the color bar code CBC can have more than one codeblocks. However, the arrangement for the code blocks is not limited tofollow the same direction such as the arrangement illustrated in FIG. 3.

In the embodiments of FIG. 6 , FIG. 7 , FIG. 8 , FIG. 9 , for theconvenience of reading, the color bars are shown as different types oflines or points rather than the above-mentioned symbols H_1, H_2, C_1 .. . . For example, a blank bar indicates the header color bar H_1, and abar with back slashes indicates the header color bar H_2. Please referto FIG. 6 , which illustrates a color bar code CBC according to anotherembodiment of the present invention. As illustrated in FIG. 6 , thecolor bar code CBC comprises a plurality of code blocks, but only thefirst code block BL_1, the second code block BL_2 are marked. The colorbars of the first code block BL_1, which include header color bars H_1,H_2 and code color bars C_1-C_5, are arranged following the direction X.Also, the color bars of the second code block BL_2 are arrangedfollowing the direction Y. In the embodiment of FIG. 6 , an anglebetween the direction X and the direction Y is 90°. However, the anglecan be any angle larger than 0°. Other code blocks of the color bar codeCBC can be arranged in the same manner. The term “direction” means adirection that a next color bar is located. Take FIG. 6 for example,following the header color bar H_1, a next header color bar H_2 islocated in the X direction next to the header color bar H_1.

The arrangement of the color bar code CBC in FIG. 6 is more convenientfor a user using the color barcode reader 201 to acquire a correct code.As illustrated in FIG. 6 , the color barcode reader 201 may cover aplurality of whole code blocks. For example, the scan lines SL_1-SL_3 ofthe code determining circuit 203 can acquire 5 codes contained in thecode blocks, and these codes are the same. For more detail, the codescontained in the code blocks at an upper side and a lower side of thesecond code block BL_2, the code contained in the center code block at aleft side of the second code block BL_2, and the code contained in thecode block at the lower left corner of the color bar code CBC can beacquired by the code determining circuit 203.

In some cases, due to noise or other unexpected errors, the 5 codes maynot be the same, and then the code determining circuit 203 can selectone of the 5 codes as the code contained in the color bar code CBC. Inone embodiment, the code determining circuit 203 selects the code whichcorresponds to a maximum number of code blocks in the 5 completelyscanned code blocks. For example, the scan lines SL_1-SL_3 of the colorbarcode reader 201 scan 5 whole code blocks in the color bar code CBCand the code determining circuit 203 accordingly acquires 3 first codesand 2 second codes. The second codes are generated due to the noise orother errors. In such case, the code determining circuit 203 selects thefirst code as the code contained in the color bar code CBC, since 3 islarger than 2.

Also, based on the arrangement for the color bar code CBC in FIG. 6 , acorrect code can still be acquired even if the scan lines SL_1 and SL_2are tilted and not parallel with the direction X or the direction Y.

Please note the direction for the arrangement is not limited to theexample illustrated in FIG. 6 . As illustrated in FIG. 7 , the firstcode block BL_1 is arranged following a direction P and the second codeblock BL_2 is arranged following a direction Q. The direction P and thedirection Q are opposite. That is, an angle between the direction P andthe direction Q is 180°.

Further, in one embodiment, the color bar code CBC further comprisesbuffer regions located between code blocks. As illustrated in FIG. 8 ,buffer regions BR are respectively located between the first code blockBL_1 and the neighboring second code block BL_2, and located between thesecond code block BL_2 and the third code block BL_3 (i.e. between twoadjacent code blocks). The buffer region BR can be empty or anypredetermined color not applied for the color bar in the code block. Forexample, the color of the buffer region BR is grey thus the codedetermining circuit 203 ignores the color grey when determines the codecontained in the color bar code CBC.

The buffer region BR can also be provided between color bars rather thanonly between the code blocks, such as the example illustrated in FIG. 9. In the embodiment of FIG. 9 , the buffer region BR_1 is locatedbetween the first code block BL_1 and the second code block BL_2.Besides, the buffer regions BR_2 are respectively located between colorbars of the first code block BL_1 and between color bars of the secondcode block BL_2 (i.e. between two adjacent code bars). In oneembodiment, the width of the buffer region BR_1 is larger than the widthof the buffer region BR_2. Due to the buffer regions BR, BR_1 or BR_2,the vendor can print the color bat code CBC more precisely, since thecolor bars of the color bar code CBC are less likely to overlap.

In one embodiment, the code CO acquired by the code determining system200 is applied as a control code to control an electronic device. Pleaserefer to FIG. 10 , the code CO, which is a code contained in the colorbar code CBC and acquired by the code determining system 200 istransmitted to an electronic device 1000, and then the electronic device1000 operates according to the code CO.

In view of above-mentioned methods, a code determining method can beacquired. The code determining method is for determining a codecontained in a color bar code (e.g. color bar code in FIG. 2A)comprising a first code block (e.g. code block BL_1 in FIG. 2A)including a header region (e.g. header region HR) with at least oneheader color bar and a code region (e.g. code region CR) with at leastone code color bar. The code determining method comprises: (a)determining a starting point based on the header region; and (b)determining the code indicated by the color bar code based on a colorkind or a color sequence of the code color bar. The header color barincludes a predetermined asymmetric optical feature.

Other detail steps can be acquired in view of above-mentionedembodiments, thus are omitted for brevity here.

In one embodiment, the code determining system 200 is located in aportable device that can be hold by a user. FIG. 11 is a schematicdiagram illustrating an example for the application of a color bar code.In the embodiment of FIG. 11 , the code determining system 200 is in amobile phone 1100 and is applied to determine the code contained in thecolor bar code CBC. After the code contained in the color bar code CBCis acquired by the code determining system 200, the mobile phone 1100operates according to the code. For example, the mobile phone 1100 candisplay specific information, play music, or display images according tothe code. In one embodiment, the above-mentioned color bar code reader201 of the code determining system 200 is the camera of the mobile. Inanother embodiment, the color bar code reader 201 comprises a lens forreading the color bar code CBS, and the lens can be located at anylocation of the mobile phone 1100. Also, the mobile phone 1100 can bereplaced by any kind of portable electronic device.

FIG. 12 is a schematic diagram illustrating another example for theapplication of a color bar code. In the example of FIG. 12 , the codedetermining system 200 is located in a toy host 1200 and the color barcode CBC is located in a toy 1201 (e.g. a doll). After the codecontained in the color bar code CBC is acquired by the code determiningsystem 200, the toy host 1200 operates according to the code. The colorbar code CBC can be designed corresponding to the kind of the toy 1201.For example, if the toy 1201 is a soldier doll, the color bar code CBCcan be designed to control the toy host 1200 to play sound of swinging asword. For another example, if the toy 1201 is a dragon doll, the colorbar code CBC can be designed to control the toy host 1200 to displayimages of spitting fire.

In view of above-mentioned embodiments, the color bar code can comprisemore information than a conventional bar code since the code containedin the color bar code depends on color kind or color sequence of variouscolors. Besides, the color determining system can more easily acquire acorrect code since more than one code block are included in the colorbar code.

Those skilled in the art will readily observe that numerousmodifications and alterations of the device and method may be made whileretaining the teachings of the invention. Accordingly, the abovedisclosure should be construed as limited only by the metes and boundsof the appended claims.

What is claimed is:
 1. A color bar code, comprising: a code block,comprising: a header region, comprising a specific color; and a coderegion, comprising at least two code color bars with different colorkinds, wherein a color sequence of the code color bars indicates a code;wherein the code color bars form concentric layers surrounding theheader region; wherein the code color bars comprises a first code colorbar surrounding the header region, and comprises a second code color barsurrounding the first code color bar; wherein the second code color bardoes not contact the header region.
 2. The color bar code of claim 1,wherein the concentric layers are circles.
 3. The color bar code ofclaim 1, wherein the concentric layers are octagons.
 4. The color barcode of claim 1, wherein the header region comprising a plurality ofheader color bars forming a specific color sequence.
 5. A codedetermining system, for determining a code contained in a color bar coderegion comprising a code block including a header region and a coderegion with a plurality of code color bars, wherein the code determiningsystem comprises: a color bar code reader, configured to read the colorbar code; and a code determining circuit, configured to determine astarting point according to the header region and to determine the codecontained in the color bar code according to a color sequence of thecode color bars, based on the color bar code read by the color bar codereader; wherein the header region comprises a specific color; whereinthe code region comprises at least two of the code color bars withdifferent color kinds; wherein the code color bars form concentriclayers surrounding the header region.
 6. The code determining system ofclaim 5, wherein the concentric layers are circles.
 7. The codedetermining system of claim 5, wherein the concentric layers areoctagons.
 8. The code determining system of claim 5, wherein the headerregion comprising a plurality of header color bars forming a specificcolor sequence.